8.1. Text Data Format Parsing
8.1.1. DCF
DCF is the object binary data format provided as standard by AROAPL.
encoding:
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.dcf";
DATA ← ⟨"SAMPLE", ⊤, 4 5 ρ ⎕RAND, ⟨"SOME"⟩ ⟨"OPTIONS"⟩⟩;
⎕FCREATE ← PATH;
⎕FPUTB ← ⟨PATH, ⎕DCFE DATA⟩;
path/to/data.dcf
...
decoding:
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.dcf";
DATA: ⟨κ[?], β, φ[? ?], ⟨κ[?]⟩[?]⟩ ← ⎕DCF ⎕FGETB PATH;
⎕ ← DATA;
⟨"SAMPLE", ⊤, 0.715031 0.715031 0.978773 0.548457 0.482434, ⟨"SOME"⟩ ⟨"OPTIONS"⟩⟩
0.260732 0.702642 0.746769 0.945723 0.677214
0.550083 0.655265 0.188118 0.570192 0.668504
0.832521 0.410975 0.580929 0.558201 0.693530
8.1.2. CSV
sample csv data (raw string matrix case):
path/to/data.csv
JOHN DOE,16,1,172.6,63.6
JOHN SMITH,32,0,176.3,59.8
JANE DOE,24,1,158.2,47.9
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.csv";
CSV ← ⎕CSV ⎕FGETT PATH;
⎕ ← CSV;
⟨"JOHN DOE"⟩ ⟨"16"⟩ ⟨"1"⟩ ⟨"172.6"⟩ ⟨"63.6"⟩
⟨"JOHN SMITH"⟩ ⟨"32,0"⟩ ⟨"176.3"⟩ ⟨"59.8"⟩
⟨"JANE DOE"⟩ ⟨"24"⟩ ⟨"1"⟩ ⟨"158.2"⟩ ⟨"47.9"⟩
sample csv data (tuple structure case):
path/to/data.csv
JOHN DOE,16,1,172.6,63.6
JOHN SMITH,32,0,176.3,59.8
JANE DOE,24,1,158.2,47.9
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.csv";
CSV: ⟨κ[?], υ, β, φ, φ⟩ ← ⎕CSVT ⎕FGETT PATH;
⎕ ← CSV;
⟨"JOHN DOE", 16, ⊤, 172.6, 63.6⟩
⟨"JOHN SMITH", 32, ⊥, 176.3, 59.8⟩
⟨"JANE DOE", 24, ⊤, 158.2, 47.9⟩
sample csv data (generic type matrix case):
path/to/data.csv
8,9,6,7,5
2,3,8,6,2
9,6,5,3,5
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.csv";
CSV ← ⎕CSVM:υ ⎕FGETT PATH;
⎕ ← CSV;
8 9 6 7 5
2 3 8 6 2
9 6 5 3 5
8.1.3. JSON
sample json data:
path/to/data.json
{
"DATA1": "STRING",
"DATA2": true,
"DATA3": [
{
"DATA4": 4
"DATA5": 4.5
},
{
"DATA4": 8
"DATA5": 9.2
},
{
"DATA4": 6
"DATA5": 8.5
},
]
}
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.json";
JSON: ⟨κ[?], β, ⟨ι, φ⟩[?]⟩ ← ⎕JSON ⎕FGETT PATH;
⎕ ← JSON;
⟨S, B, L⟩ ← JSON;
⎕ ← S;
⎕ ← B;
⎕ ← L;
⎕ ← ρL;
⟨"STRING", ⊤, ⟨4, 4.5⟩ ⟨8, 9.2⟩ ⟨6, 8.5⟩⟩
"STRING"
⊤
⟨4, 4.5⟩ ⟨8, 9.2⟩ ⟨6, 8.5⟩
3
8.1.4. XML
8.1.5. YAML
8.1.6. TOML
8.2. Binary Data Format Parsing
8.2.1. Image
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.png";
IMAGE ← ⎕IMAGE ⎕FGETB PATH;
⎕ ← ρIMAGE;
640 480 3
8.2.1. Audio
audio (whole data):
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.mp3";
AUDIO ← ⎕AUDIO ⎕FGETB PATH;
⟨SR, BD, DATA⟩ ← AUDIO;
⎕ ← SR;
⎕ ← BD;
⎕ ← ρDATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
44100
16
2 352800
audio (partial data):
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.mp3";
AUDIO ← ⟨350000, 100000, ⎕PAUDIO ⎕FGETB PATH⟩;
⟨SR, BD, DATA⟩ ← AUDIO;
⎕ ← SR;
⎕ ← BD;
⎕ ← ρDATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
44100
16
2 2800
8.2.1. Video
video (whole data):
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.mp4";
VIDEO ← ⎕VIDEO ⎕FGETB PATH;
⟨FPS, VDATA, ⟨SR, BD, ADATA⟩⟩ ← VIDEO;
⎕ ← FPS;
⎕ ← ρVDATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
⎕ ← SR;
⎕ ← BD;
⎕ ← ρADATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
29.7
238 640 480 3
44100
16
2 352800
video (partial data):
⎕IMPORT ← "FS";
⎕IMPORT ← "DFP";
PATH ← "path/to/data.mp4";
VIDEO ← ⟨200, 40, ⎕PVIDEO ⎕FGETB PATH⟩;
⟨FPS, VDATA, ⟨SR, BD, ADATA⟩⟩ ← VIDEO;
⎕ ← FPS;
⎕ ← ρVDATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
⎕ ← SR;
⎕ ← BD;
⎕ ← ρADATA ⍝ 1: MONORAL, 2: STEREO, 6: 5.1CH / BODY DATA ⍝
29.7
38 640 480 3
44100
16
2 56330